package com.example.model.article.pojo;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.Date;

@Data
@NoArgsConstructor
@AllArgsConstructor
@Schema(name = "Article", description = "文章信息表，存储已发布的文章")
public class Article {
    @TableId(type = IdType.ASSIGN_ID)
    private Long articleId;

    @Schema(description = "标题")
    private String articleTitle;

    @Schema(description = "文章作者的ID")
    private Integer authorId;

    @Schema(description = "作者昵称")
    private String authorName;

    @Schema(description = "文章所属频道ID")
    private Integer channelId;

    @Schema(description = "频道名称")
    private String channelName;

    @Schema(description = "文章布局 0无图文章 1单图文章 2多图文章")
    private Short articleLayout;

    @Schema(description = "文章标记 0普通文章 1热点文章 2置顶文章 3精品文章 4大V 文章")
    private Short articleFlag;

    @Schema(description = "文章图片 多张逗号分隔")
    private String articleImages;

    @Schema(description = "文章标签最多3个 逗号分隔")
    private String articleLabels;

    @Schema(description = "点赞数量")
    private Integer articleLikes;

    @Schema(description = "收藏数量")
    private Integer articleCollection;

    @Schema(description = "评论数量")
    private Integer articleComment;

    @Schema(description = "阅读数量")
    private Integer articleViews;

    @Schema(description = "省市")
    private Integer provinceId;

    @Schema(description = "市区")
    private Integer cityId;

    @Schema(description = "区县")
    private Integer countyId;

    @Schema(description = "创建时间")
    private Date createdTime;

    @Schema(description = "发布时间")
    private Date publishTime;

    @Schema(description = "同步状态")
    private Integer syncStatus;

    @Schema(description = "来源")
    private Integer articleOrigin;

    private String staticUrl;
}
